package com.dhecp.project.api.mapper;

import com.dhecp.project.api.domain.PurchaseOrder;
import com.dhecp.project.api.domain.PurchaseOrderSon;
import com.dhecp.project.api.domain.PurchasePlan;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @ClassName PurchaseOrderMapper
 * @Description TODO
 * @Author alula
 * @Date 2022-08-31 15:50
 */
public interface PurchaseOrderMapper {

    List<PurchaseOrder> findPurchaseOrderList(Map<String, Object> params);

    List<PurchaseOrderSon> findPurchaseOrderConList(Map<String, Object> params);

    PurchaseOrder findPurchaseOrderByBid(@Param("bid") String bid);

    PurchasePlan findByPlanId(@Param("bid") String bid);

    /**
     * 创建1688订单更新（根据采购单号）
     * @param params
     * @return
     */
    int updatePurchaseOrderToCreateOrder(Map<String, Object> params);

    /**
     * 获取1688物流信息更新（根据采购单号）
     * @param params
     * @return
     */
    int updatePurchaseOrderToLogistics(Map<String, Object> params);

    /**
     * 1688订单取消更新（根据采购单号）
     * @param params
     * @return
     */
    int updatePurchaseOrderToCancelOrder(Map<String, Object> params);

    /**
     * 更新1688订单状态相关信息（根据采购单号）
     * @param params
     * @return
     */
    int updatePurchaseOrderToInfo(Map<String, Object> params);

    /**
     * 根据1688订单号，更新采购订单相关信息
     * @param params
     * @return
     */
    int updatePurchaseOrderInfoByAliOrderNo(Map<String, Object> params);

    /**
     * 根据根据1688订单号，更新采购订单表付款状态信息
     * @param params
     * @return
     */
    int updatePurchaseOrderPayStatusByAliOrderNo(Map<String, Object> params);

    /**
     * 根据1688订单号，更新采购订单线上付款表付款状态信息
     * @param params
     * @return
     */
    int updatePurchaseOrderPaymentPayStatusByAliOrderNo(Map<String, Object> params);

    /**
     * 根据1688订单号，更新采购订单商品明细子件实际单价
     * @param params
     * @return
     */
    int updatePurchaseOrderSonToPrice(Map<String, Object> params);

}
